#coding:utf-8

####################################################################
##  一，脚本语法说明：
##  [类型字段, 命令字段, 匹配结果字段, 超时时间字段, 错误等级字段]
##  1，类型字段：
##        0：AT命令
##        1：延迟
##        2：数据
##		  3：命令嵌套
##	2，命令字段：
##		1）AT命令
##		[0, 'AT命令字符串', '匹配结果', 超时时间（单位s）, 错误等级字段]
##		2）延迟命令
##		[1, 延迟时间（单位ms）, '', '', '']
##		3）发送数据
##		[2, '数据内容', '匹配结果', 超时时间(单位s), 错误等级字段]
##		4）命令嵌套
##		[2, 命令列表名称, '', '', 错误等级字段]
##	3，匹配结果字段：
##		1）单行字符串('string')：按照字符串查找方式，匹配AT返回中的某一行，如果匹配成功就认为命令执行成功
##		2) 单行正则表达式(Reg('reg')): 按照正则表达式匹配方式，匹配AT返回中某一行，如果匹配成功就认为命令执行成功
##		3）多行字符串(FullMatch('string_line1\r\nstring_line2')): 按照字符串查找方式，匹配AT返回中的多行，如果匹配成功就认为命令执行成功
##		4）多行正则表达式(ReMatch('reg1[\s\S]+reg2')): 按照正则表达式匹配方式，匹配AT返回的多行，如果匹配成功就认为命令执行成功
##	4，超时时间字段：
##		如果执行【命令字段】后没有匹配到【匹配结果字段】，就会等待超时，超时时间单位为s
##	5，错误等级字段
##		0：忽略该条命令匹配错误继续执行下一行
##		1：如果该条命令匹配错误就停止执行
####################################################################

socket_scontReg = '[\s\S]{2}\+CIPSCONT: 0[\s\S]{2}\+CIPCSGP: 1[\s\S]{2}Gprs Config APN: .*[\s\S]{2}Gprs Config UserId: [\s\S]{2}Gprs Config Password: [\s\S]{2}\+CIPHEAD: 0[\s\S]{2}\+CIPSHOWTP: 1[\s\S]{2}\+CIPSRIP: 1[\s\S]{2}\+CIPATS: 0,0[\s\S]{2}\+CIPSPRT: 1,0[\s\S]{2}\+CIPQSEND: 1[\s\S]{2}\+CIPMODE: 1[\s\S]{2}\+CIPCCFG: 5,2,1024,1,0,1460,50[\s\S]{2}\+CIPMUX: 0[\s\S]{2}\+CIPDPDP: 1,10,3[\s\S]{2}\+CIPRXGET: 1[\s\S]{2}\+CIPRDTIMER: 2000,3500[\s\S]{2}[\s\S]{2}OK[\s\S]{2}'
socket_scontReg2 ='[\s\S]{2}\+CIPSCONT: 0[\s\S]{2}\+CIPCSGP: 1[\s\S]{2}Gprs Config APN: .*[\s\S]{2}Gprs Config UserId: [\s\S]{2}Gprs Config Password: [\s\S]{2}\+CIPHEAD: 0[\s\S]{2}\+CIPSHOWTP: 0[\s\S]{2}\+CIPSRIP: 0[\s\S]{2}\+CIPATS: 0,0[\s\S]{2}\+CIPSPRT: 1,0[\s\S]{2}\+CIPQSEND: 0[\s\S]{2}\+CIPMODE: 0[\s\S]{2}\+CIPCCFG: 5,2,1024,1,0,1460,50[\s\S]{2}\+CIPMUX: 0[\s\S]{2}\+CIPDPDP: 1,10,3[\s\S]{2}\+CIPRXGET: 0[\s\S]{2}\+CIPRDTIMER: 2000,3500[\s\S]{2}[\s\S]{2}OK[\s\S]{2}' 

socket_tcpip = [
#cipmode
	[0,'AT+CIPMODE=1', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT', 50, 1],
	
	[2,'00000000000000000000', FullMatch('00000000000000000000'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'222222222222222222', FullMatch('222222222222222222'), 20, 1],
	[2,'123123123123123', FullMatch('123123123123123'), 20, 1],
	[2,'\x09\x09\x09\x09\x09\x09', FullMatch('\x09\x09\x09\x09\x09\x09'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'111111111111111111111111111111111111111111111111111', FullMatch('111111111111111111111111111111111111111111111111111'), 20, 1],
	[2,'\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02', FullMatch('\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02'), 20, 1],
	[1, 1000,"","",""],
	[2,'+++', 'OK', 20,1],
	[0,'AT+CIPCLOSE', 'CLOSE OK', 20,1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPMODE=0', 'OK', 1, 1],
#CIPSPRT
	[0,'AT+CIPSPRT=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT OK', 50, 1],
	[0,'AT+CIPSEND=10\r\x31\x00\x00\x00\x00\x00\x00\x00\x00\x31', FullMatch('SEND OK\r\n\x31\x00\x00\x00\x00\x00\x00\x00\x00\x31\r\n'), 20, 1],
	[0,'AT+CIPSEND=10\r0123456789', FullMatch('SEND OK\r\n0123456789\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=154\r1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('SEND OK\r\n1111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND=10\r0123456789', FullMatch('SEND OK\r\n0123456789\r\n'), 20, 1],
	[0,'AT+CIPSEND=15\r\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02', FullMatch('SEND OK\r\n\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02\x00\x01\x02\r\n'), 20, 1],

	[0,'AT+CIPSPRT=1', 'OK', 1, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', FullMatch('SEND OK\r\n22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', FullMatch('SEND OK\r\n22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', FullMatch('SEND OK\r\n22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', FullMatch('SEND OK\r\n22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', FullMatch('SEND OK\r\n22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', FullMatch('SEND OK\r\n22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\r\n'), 20, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'\x11\x12\x14\x00\x11\x12\x14\x00\x11\x12\x14\x00\x11\x12\x14\x00\x34\x1A', FullMatch('SEND OK\r\n\x11\x12\x14\x00\x11\x12\x14\x00\x11\x12\x14\x00\x11\x12\x14\x00\x34\r\n'), 20, 1],

	[0,'AT+CIPSPRT=2', 'OK', 1, 1],
	[0,'AT+CIPSEND=10\r0123456789', FullMatch('0123456789'), 20, 1],
	[0,'AT+CIPSEND=10\r0123456789', FullMatch('0123456789'), 20, 1],
	[0,'AT+CIPSEND=10\r0123456789', FullMatch('0123456789'), 20, 1],
	[0,'AT+CIPSEND=10\r0123456789', FullMatch('0123456789'), 20, 1],
	[0,'AT+CIPSEND=125\r22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222'), 20, 1],
	[0,'AT+CIPSEND=125\r22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222'), 20, 1],
	[0,'AT+CIPSEND=125\r22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', FullMatch('22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222'), 20, 1],
	[0,'AT+CIPSEND=256\r2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656', FullMatch('2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656'), 20, 1],
	[0,'AT+CIPSEND=256\r2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656', FullMatch('2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656'), 20, 1],
	[0,'AT+CIPSEND=256\r2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656', FullMatch('2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656'), 20, 1],
	[0,'AT+CIPSEND=256\r2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656', FullMatch('2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222225656565656565656565656'), 20, 1],
	[0,'AT+CIPSPRT=1', 'OK', 1, 1],

	[0,'AT+CIPCLOSE', 'CLOSE OK', 20,1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
#CIPMUX
	[0,'AT+CIPMUX=1', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTART=1,"TCP","121.40.198.143",12415', '1, CONNECT OK', 50, 1],
	[0,'AT+CIPSTART=2,"UDP","erp.openluat.com",12414', '2, CONNECT OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[2,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[0,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[0,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[0,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[2,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=1,78', FullMatch('>'), 1, 1],
	[2,'111111111111111111111111111111111111111111111111111111111111111111111111111111', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2,125', FullMatch('>'), 1, 1],
	[0,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=2,125', FullMatch('>'), 1, 1],
	[0,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[2,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[2,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPSEND=1', FullMatch('>'), 1, 1],
	[2,'111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', '1, SEND OK', 20,1],
	[0,'AT+CIPSEND=2', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', '2, SEND OK', 20,1],
	[0,'AT+CIPCLOSE=1', '1, CLOSE OK', 5, 1],
	[0,'AT+CIPCLOSE=2', '2, CLOSE OK', 5, 1],

#CIPSTATUS CMUX=0
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP INITIAL\r\n'), 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 1, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP START\r\n'), 1, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP GPRSACT\r\n'), 1, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP STATUS\r\n'), 1, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT OK', 50, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: CONNECT OK\r\n'), 1, 1],
	[0,'AT+CIPCLOSE', 'CLOSE OK', 5, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: TCP CLOSED\r\n'), 1, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP INITIAL\r\n'), 1, 1],

#CIPSTATUS CMUX=0
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPMUX=1', 'OK', 1, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP INITIAL\r\n\r\nC: 0,,"","","","INITIAL"\r\nC: 1,,"","","","INITIAL"\r\nC: 2,,"","","","INITIAL"\r\nC: 3,,"","","","INITIAL"\r\nC: 4,,"","","","INITIAL"\r\nC: 5,,"","","","INITIAL"\r\n'), 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 1, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTART=1,"TCP","121.40.198.143",12415', '1, CONNECT OK', 50, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP PROCESSING\r\n\r\nC: 0,,"","","","INITIAL"\r\nC: 1,0,"TCP","121.40.198.143","12415","CONNECTED"\r\nC: 2,,"","","","INITIAL"\r\nC: 3,,"","","","INITIAL"\r\nC: 4,,"","","","INITIAL"\r\nC: 5,,"","","","INITIAL"\r\n'), 1, 1],
	[0,'AT+CIPCLOSE=1', '1, CLOSE OK', 5, 1],
	[0,'AT+CIPSTATUS', FullMatch('\r\nOK\r\n\r\nSTATE: IP STATUS\r\n\r\nC: 0,,"","","","INITIAL"\r\nC: 1,0,"TCP","121.40.198.143","12415","CLOSED"\r\nC: 2,,"","","","INITIAL"\r\nC: 3,,"","","","INITIAL"\r\nC: 4,,"","","","INITIAL"\r\nC: 5,,"","","","INITIAL"\r\n'), 1, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],



#CIPACK
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 20, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT OK', 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[0,'test\x1A', FullMatch('SEND OK\r\ntest\r\n'), 20,1],
	[0,'AT+CIPACK', FullMatch('+CIPACK: 4,4,0\r\n\r\nOK\r\n'), 1, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', 'SEND OK', 20,1],
	[0,'AT+CIPACK', Reg('\+CIPACK: 129,[0-9]+,[0-9]+'), 1, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', 'SEND OK', 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', 'SEND OK', 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', 'SEND OK', 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', 'SEND OK', 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 1, 1],
	[2,'22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\x1A', 'SEND OK', 20,1],
	[0,'AT+CIPACK', Reg('\+CIPACK: 754,[0-9]+,[0-9]+'), 1, 1],
	[0,'AT+CIPCLOSE', 'CLOSE OK', 5, 1],
#CIPQSEND
	[0,'ATE1', 'OK', 1, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPQSEND=1', 'OK', 1, 1],
	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 20, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT OK', 50, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 15, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 15, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 15, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'222222222222222222\x1A', FullMatch('DATA ACCEPT:18\r\n222222222222222222\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'3333333333333333333333333333333333333333\x1A', FullMatch('DATA ACCEPT:40\r\n3333333333333333333333333333333333333333\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 5, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\x1A', FullMatch('DATA ACCEPT:137\r\n11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'32333333333333333333333333333322\x1A', FullMatch('DATA ACCEPT:32\r\n32333333333333333333333333333322\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'6464646464646464646464646464646464646464646464646464646464646464\x1A', FullMatch('DATA ACCEPT:64\r\n6464646464646464646464646464646464646464646464646464646464646464\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'6464646464646464646464646464646464646464646464646464646464646464\x1A', FullMatch('DATA ACCEPT:64\r\n6464646464646464646464646464646464646464646464646464646464646464\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\x1A', FullMatch('DATA ACCEPT:128\r\n12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\x1A', FullMatch('DATA ACCEPT:128\r\n12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'6464646464646464646464646464646464646464646464646464646464646464\x1A', FullMatch('DATA ACCEPT:64\r\n6464646464646464646464646464646464646464646464646464646464646464\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[1, 2000,"","",""],
	[2,'32333333333333333333333333333322\x1A', FullMatch('DATA ACCEPT:32\r\n32333333333333333333333333333322\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'32333333333333333333333333333322\x1A', FullMatch('DATA ACCEPT:32\r\n32333333333333333333333333333322\r\n'), 20,1],
	[1, 2000,"","",""],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\x1A', FullMatch('DATA ACCEPT:128\r\n12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\r\n'), 20,1],
	[1, 2000,"","",""],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\x1A', FullMatch('DATA ACCEPT:128\r\n12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\x1A', FullMatch('DATA ACCEPT:128\r\n12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\r\n'), 20,1],
	[1, 2000,"","",""],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\x1A', FullMatch('DATA ACCEPT:128\r\n12812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812812\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[1, 2000,"","",""],
	[2,'32333333333333333333333333333322\x1A', FullMatch('DATA ACCEPT:32\r\n32333333333333333333333333333322\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\x1A', FullMatch('DATA ACCEPT:256\r\n2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'32333333333333333333333333333322\x1A', FullMatch('DATA ACCEPT:32\r\n32333333333333333333333333333322\r\n'), 20,1],
	[1, 2000,"","",""],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\x1A', FullMatch('DATA ACCEPT:256\r\n2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\x1A', FullMatch('DATA ACCEPT:256\r\n2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\x1A', FullMatch('DATA ACCEPT:256\r\n2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\r\n'), 20,1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\x1A', FullMatch('DATA ACCEPT:256\r\n2562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562562565625625625\r\n'), 20,1],
	
	[0,'AT+CIPCLOSE', 'CLOSE OK', 5, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPQSEND=0', 'OK', 1, 1],
	
	[0,'ATE0', 'OK', 1, 1],
#CISCONT
	[0,'AT+CIPSHOWTP=1', 'OK', 1, 1],
	[0,'AT+CIPSRIP=1', 'OK', 1, 1],
	[0,'AT+CIPQSEND=1', 'OK', 1, 1],
	[0,'AT+CIPMODE=1', 'OK', 1, 1],
	[0,'AT+CIPRXGET=1', 'OK', 1, 1],

	[0,'AT+CIPSCONT', 'OK', 20,1],
	[0,'AT+CIPSCONT?', ReMatch(socket_scontReg), 20,1],

	[0,'AT+CIPSHOWTP=0', 'OK', 1, 1],
	[0,'AT+CIPSRIP=0', 'OK', 1, 1],
	[0,'AT+CIPQSEND=0', 'OK', 1, 1],
	[0,'AT+CIPMODE=0', 'OK', 1, 1],
	[0,'AT+CIPRXGET=0', 'OK', 1, 1],
	[0,'AT+CIPSCONT', 'OK', 20,1],
	[0,'AT+CIPSCONT?', ReMatch(socket_scontReg2), 20,1],
#CIPRXGET
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPRXGET=1', 'OK', 1, 1],
	[0,'AT+CIPSRIP=0', 'OK', 1, 1],
	[0,'AT+CIPSHOWTP=0', 'OK', 1, 1],
	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 20, 1],
	[0,'AT+CIPSTART="UDP","erp.openluat.com",12414', 'CONNECT OK', 50, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[0,'test\x1A', FullMatch('SEND OK\r\n\r\n+CIPRXGET: 1\r\n'), 20,1],
	[0,'AT+CIPRXGET=2,1024', FullMatch('+CIPRXGET: 2,4,0\r\ntest\r\n\r\nOK\r\n'), 5, 1],
	[0,'AT+CIPCLOSE=0', 'CLOSE OK', 5, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPRXGET=0', 'OK', 1, 1],

#CIPSHOWTP
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CIPSHOWTP=1', 'OK', 1, 1],
	[0,'AT+CIPHEAD=1', 'OK', 1, 1],
	[0,'AT+CIPSRIP=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 20, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT OK', 50, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[0,'test\x1A', FullMatch('SEND OK\r\n+IPD,4,TCP:test\r\n'), 20,1],
	[0,'AT+CIPCLOSE=0', 'CLOSE OK', 5, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPHEAD=0', 'OK', 1, 1],
#CIPSRIP sig
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPSRIP=1', 'OK', 1, 1],

	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 20, 1],
	[0,'AT+CIPSTART="TCP","121.40.198.143",12415', 'CONNECT OK', 50, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[0,'test\x1A', FullMatch('SEND OK\r\n\r\nRECV FROM:121.40.198.143:12415\r\ntest\r\n'), 20,1],
	[0,'AT+CIPCLOSE=0', 'CLOSE OK', 5, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],

#CIPSRIP multi-ip
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
	[0,'AT+CIPSRIP=1', 'OK', 1, 1],
	[0,'AT+CIPMUX=1', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 20, 1],
	[0,'AT+CIPSTART=1,"TCP","121.40.198.143",12415', '1, CONNECT OK', 50, 1],
	[0,'AT+CIPSTART=2,"TCP","121.40.198.143",12415', '2, CONNECT OK', 50, 1],
	[0,'AT+CIPSEND=1,6', FullMatch('>'), 5, 1],
	[0,'123456', FullMatch('1, SEND OK\r\n\r\n+RECEIVE,1,6,121.40.198.143:12415\r\n123456\r\n'), 20,1],
	[0,'AT+CIPSEND=2,6', FullMatch('>'), 5, 1],
	[0,'123456', FullMatch('2, SEND OK\r\n\r\n+RECEIVE,2,6,121.40.198.143:12415\r\n123456\r\n'), 20,1],
	[0,'AT+CIPCLOSE=1', '1, CLOSE OK', 5, 1],
	[0,'AT+CIPCLOSE=2', '2, CLOSE OK', 5, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 30, 1],
]


socket_closed = [
	[0,'AT+CIPMUX=0', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTART="TCP","www.baidu.com",80', 'CONNECT OK', 90, 1],
	[0,'AT+CIPSEND', FullMatch('>'), 5, 1],
	[2,'GET / HTTP/1.1\r\nHost: 36.7.87.100\r\nConnection: keep-alive\x1a\r\n\r\n', ReMatch('SEND OK\r\nCLOSED'), 90, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 20,1],
	[0,'AT+CIPMUX=1', 'OK', 1, 1],
	[0,'AT+CSTT="'+apn1+'"', 'OK', 5, 1],
	[0,'AT+CIICR', 'OK', 20, 1],
	[0,'AT+CIFSR', Reg('(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))'), 1, 1],
	[0,'AT+CIPSTART=0,"TCP","www.baidu.com",80', '0, CONNECT OK', 90, 1],
	[0,'AT+CIPSEND=0', FullMatch('>'), 5, 1],
	[2,'GET / HTTP/1.1\r\nHost: 36.7.87.100\r\nConnection: keep-alive\x1a\r\n\r\n', ReMatch('0, SEND OK\r\n0, CLOSED'), 90, 1],
	[0,'AT+CIPSHUT', 'SHUT OK', 20,1],
]